package JackSu.多线程;

class MyThread extends Thread {
    @Override
    public void run() {
        for (int i = 0; i < 100; i++) {
            if (i%2==0){
                try {
                    //空闲多少秒后执行 ms
                    sleep(1000);
                } catch (InterruptedException e) {
                    e.printStackTrace();
                }
                this.setName("JackSu Thread:");
                System.out.println(Thread.currentThread().getName()+i);
            }
//            if (i == 20) {
//                //释放当前cpu的执行权，但cpu可能在下一刻又分配过来
//                yield();
//            }

        }

    }
}
public class _01run方式重写 {
//从方法执行和从类执行
        public static void main(String[] args) throws InterruptedException {

            MyThread myThread = new MyThread();
            //设置当前线程的优先级
            myThread.setPriority(Thread.MAX_PRIORITY);
            //调用start方法他会自动去调子线程中的run方法
            myThread.start();
            for (int i = 0; i <100; i++) {
                if (i %2==0) {

                    System.out.println(Thread.currentThread().getName()+i);
                }
                //join 在a线程中调用，a进入阻塞状态，直到b完全结束后，a结束阻塞状态。当有些服务需要加载数据的时候可以用这个来做
                if (i == 20) myThread.join();


            }



        }
    }


